package main


import (
"fmt"
"container/list"
)


type A struct{
  Aa  int
}


func main(){

   l := list.New()

   l.PushBack(A{Aa:10})

   l.PushBack(A{Aa:20})
   a1:= l.PushBack(A{Aa:30})

   l.InsertBefore(A{Aa:40},a1)
   
   for e:=l.Front();e!=nil;e=e.Next() {
        fmt.Println("ok",e.Value.(A).Aa)
   }
}
